//An ugly number is a positive integer whose prime factors are limited to 2, 3, 
//and 5. 
//
// Given an integer n, return true if n is an ugly number. 
//
// 
// Example 1: 
//
// 
//Input: n = 6
//Output: true
//Explanation: 6 = 2 × 3 
//
// Example 2: 
//
// 
//Input: n = 8
//Output: true
//Explanation: 8 = 2 × 2 × 2
// 
//
// Example 3: 
//
// 
//Input: n = 14
//Output: false
//Explanation: 14 is not ugly since it includes the prime factor 7.
// 
//
// Example 4: 
//
// 
//Input: n = 1
//Output: true
//Explanation: 1 has no prime factors, therefore all of its prime factors are li
//mited to 2, 3, and 5.
// 
//
// 
// Constraints: 
//
// 
// -231 <= n <= 231 - 1 
// 
// Related Topics 数学 
// 👍 278 👎 0


package leetcode.editor.cn;

//Java：Ugly Number
class P263UglyNumber {
    public static void main(String[] args) {
        Solution solution = new P263UglyNumber().new Solution();
        solution.isUgly(6);
        // TO TEST
    }

    //leetcode submit region begin(Prohibit modification and deletion)
    class Solution {
        public boolean isUgly(int n) {
            if (n == 0) {
                return false;
            }

            while (n != 1) {
                if (n % 2 == 0) {
                    n = n / 2;
                } else if (n % 3 == 0) {
                    n = n / 3;
                } else if (n % 5 == 0) {
                    n = n / 5;
                } else {
                    return false;
                }
            }
            return true;
        }
    }

//leetcode submit region end(Prohibit modification and deletion)

}